package savet.gui.dialogos;

import savet.gui.modelos.ListaLegendaModel;
import java.util.List;
import javax.swing.JList;
import javax.swing.ListSelectionModel;
import savet.entidades.atributos.Legenda;

/**
 *
 * @author Adisson Marinho
 */
public class JListLegenda extends JList {

    private ListaLegendaModel model;

    public JListLegenda() {
        this(new ListaLegendaModel());
    }

    public JListLegenda(ListaLegendaModel model) {
        super(model);

        // configura CellRenderer para um JCheckBox
        setCellRenderer(new CheckListRenderer());

        // adiciona MouseAdapter para alternar o estado dos checkboxes
        addMouseListener(new CheckListClick());

        setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        
        this.model = model;
    }

    public void addLegenda(Legenda legenda) {
        model.addLegenda(legenda);
    }

    public void removeLegenda(Legenda legenda) {
        model.removeLegenda(legenda);
    }

    public List<Legenda> getLegendasSelecionadas() {
        return model.getLegendasSelecionadas();
    }

}
